#pragma once
class MyMatrix
{
private:
	// matrix properties
	int _width;
	int _height;
	// data held here useing math for the maxtix locations
	double *_matrix;

public:
	MyMatrix(int width, int height);
	MyMatrix(MyMatrix& copy);

	~MyMatrix(void);

	double& at(int x, int y);

	void ToString();

	void Clear();

	const double* GetRoto();

	MyMatrix Transpose();

	// overloaded operators
	// overload the asignment operator
	MyMatrix operator= (const MyMatrix& value);
	// over load the mathmatic operators
	MyMatrix operator+ (MyMatrix value);
	MyMatrix operator- (MyMatrix value);
	MyMatrix operator* (MyMatrix value);

	MyMatrix operator+= (MyMatrix value);
	MyMatrix operator-= (MyMatrix value);
	MyMatrix operator*= (MyMatrix scaler);
};

